﻿namespace che4
{
    internal class Text2class3
    {
        static void Main(string[] args)
        {
            //1.变量存储空间（内存里）
            //1byte=8bit(字节)
            //1MB=1024byte
            //1GB=1024MB
            //1TB=1024GB

            //用sizeof可以显示变量类型所占内存空间（单位：字节）

            //有符号的
            int sbyteSize = sizeof(sbyte);
            Console.WriteLine("sbyte所占字节数为：" + sbyteSize);
            int intSize = sizeof(int);
            Console.WriteLine("int所占字节数为" +intSize);
            int shortSize = sizeof(short);
            Console.WriteLine("short所占字节数为：" + shortSize);
            int longSize = sizeof(long);
            Console.WriteLine("long所占字节数为：" + longSize);
            Console.WriteLine("++++++++++++++++++++++++++++++++++++++++" );//分割线

            //无符号的
            int byteSize = sizeof(byte);
            Console.WriteLine("byte所占字节数为：" + byteSize);
            int uintSize = sizeof(uint);
            Console.WriteLine("uint所占字节数为" + uintSize);
            int ushortSize = sizeof(ushort);
            Console.WriteLine("ushort所占字节数为：" + ushortSize);
            int ulongSize = sizeof(ulong);
            Console.WriteLine("ulong所占字节数为：" + ulongSize);
            //变量类型能储存的数值范围越大，所占内存字节长度约大
            //要是想知道为什么这么大，去看鹏哥的C语言课，那里有详细讲
            Console.WriteLine("++++++++++++++++++++++++++++++++++++++++");//分割线

            //浮点数
            int floatSize = sizeof(float);
            Console.WriteLine("float所占字节数为：" + floatSize);
            int doubleSize = sizeof(double);
            Console.WriteLine("double所占字节数为" + doubleSize);
            int decimalSize = sizeof(decimal);
            Console.WriteLine("decimal所占字节数为：" + decimalSize);
            //能存储的有效数字越多，所占字节长度越大（同上）
            Console.WriteLine("++++++++++++++++++++++++++++++++++++++++");//分割线

            //特殊类型
            int boolSize = sizeof(bool);
            Console.WriteLine("bool所占字节数为：" + boolSize);
            int charSize = sizeof(char);//char在C#中占2个字节，但是在其他语言里有可能是一个字节
            Console.WriteLine("char所占字节数为" + charSize);
            //还有一个string没敲，因为这个是可变的，不固定的

            //2.变量的本质	
            //变量的本质是2进制——>计算机中所有数据的本质都是二进制	是一堆0和1
            //为什么是2进制？
            //数据传递只能通过电信号，只有开和关两种状态。所以就用0和1来表示这两种状态
            //计算机中的存储单位最小为bit（位），他只能表示0和1两个数字
            //1bit 就是1个数	要不是0要不是1
            //为了方便数据表示
            //出现一个叫byte（字节）的单位，它是由8个bit组成的存储单位。想知道为什么是8个字节去看鹏哥的课
            //所以我们一般说一个字节为8位
            //2进制和10进制的对比
            //2进制和10进制之间的相互转换
            Console.WriteLine("++++++++++++++++++++++++++++++++++++++++");//分割线
            //因为下节课内容少，所以作业写在这里
            //按照驼峰命名法命名一下内容（用英文）：我的名字，我的爱好，我的最爱
            string myName = ("Charlie"), myHoby = ("VOCALORD"), myBest = ("Miku&Lin&Len!");
            Console.WriteLine("名字：" + myName);
            Console.WriteLine("爱好：" + myHoby);
            Console.WriteLine("最爱：" + myBest);
        }
    }
}
